-
-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
$mol_number dot minus constraint #717
Conversation
number/number.view.ts
Outdated
const dot_pos = next.indexOf('.') | ||
|
||
if (dot_pos !== -1) { | ||
next = next.slice(0, dot_pos) + '.' + next.slice(dot_pos + 1).replace(/\./g, '') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А зачем ты пересоздаёшь число? value_normalized возвращает его в нормальной форме.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
value_normalized внутри в число конвертит и херит всю строку, при малейшем не соответствии формату, две точки к примеру 123..
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
по хорошему, если юзер ставит точку где-то, надо точки остальные убирать и оставлять там, где курсор. Не хотел в эти дебри есть, поведение текущее меня устраивает.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Так можно просто сравнить текущее значение с нормальным сохранённым и вернуть одно из них.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
было 123.321
ввели 123.3.21
сейчас вернется 1233.21
ты предлагаешь не давать юзеру простой способ переместить точку? надо обязательно сделать перед этим лишнее действие по удалению старой точки?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
И что значит сравнить с нормальным сохраненным? в next у нас 2 точки, как понять какую отбросить?
просто сравнение не поможет тут
Если сконвертить в число и проверить на NaN - то этого мало, т.к. эта проверка не сетит в value, но инпут не ограничивает, иначе какой-нить минус не ввести будет отдельно
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ты предлагаешь не давать юзеру простой способ переместить точку?
Странный вывод. Я предлагаю разрешить ему писать что хочет, но не проталкивать вглубь невалидные значения.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
я не понимаю, что ты хочешь, предлагаю закруглятся
number/number.view.ts
Outdated
|
||
for (let i = num_str.length - 1; i >= 0; i--) { | ||
result += '_' | ||
if ((i % 3) === 0) result += ' ' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Я бы предложил форматировать через подчёркивания, как в JS.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
подчеркивания используются в mol_format как плейсхолдер в маске:
Line 28 in 96aeaf3
while( mask[ from ] && mask[ from ] !== '_' ) { |
разделитель не может быть подчеркиванием
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Возможно стоит добавить кастомизацию плейсхолдера.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
такая себе идея, будут несовместимые шаблоны, я пока отвинтил format, бажный он, быстро пофиксить не получилось
No description provided.